// 'www.baidu.com?a=3&b=4'得到一个对象{a:3,b:4}

/*
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                              href                                              │
├──────────┬──┬─────────────────────┬────────────────────────┬───────────────────────────┬───────┤
│ protocol │  │        auth         │          host          │           path            │ hash  │
│          │  │                     ├─────────────────┬──────┼──────────┬────────────────┤       │
│          │  │                     │    hostname     │ port │ pathname │     search     │       │
│          │  │                     │                 │      │          ├─┬──────────────┤       │
│          │  │                     │                 │      │          │ │    query     │       │
"  https:   //    user   :   pass   @ sub.example.com : 8080   /p/a/t/h  ?  query=string   #hash "
│          │  │          │          │    hostname     │ port │          │                │       │
│          │  │          │          ├─────────────────┴──────┤          │                │       │
│ protocol │  │ username │ password │          host          │          │                │       │
├──────────┴──┼──────────┴──────────┼────────────────────────┤          │                │       │
│   origin    │                     │         origin         │ pathname │     search     │ hash  │
├─────────────┴─────────────────────┴────────────────────────┴──────────┴────────────────┴───────┤
│                                              href                                              │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
*/
const url = "http://www.baidu.com:8080/a/b/c?a=3&b=4";

// const fn = (url) => {
//   const query = url.split("?")[1]; // a=3&b=4  -> {a: 3, b: 4}
//   const arr = query.split("&"); //  [ 'a=3', 'b=4' ]
//   const obj = {};
//   arr.forEach((item) => {
//     const [key, value] = item.split("=");
//     obj[key] = value;
//   });
//   return obj;
// };

// console.log(fn(url));

// const list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
// const sum = list.reduce((sum, item) => {
//   return (sum += item);
// }, 0);
// console.log(sum);

// new URL传入一个完整的url字符串，返回一个url对象，对象里面有searchParams属性
// const obj = new URL(url);
// console.log(obj.searchParams.get("a"));

// new URLSearchParams传入的是search查询字符串，返回的是url对象下的searchParams属性
// const obj = new URLSearchParams("?a=3&b=4");
// console.log(obj.get("a"));

const obj = { a: 3, b: 4 }; // -> a=3&b=4
console.log(new URLSearchParams(obj).toString());
